package com.divemotor.ventarepuestosinternet.service;

import java.util.List;

import org.primefaces.model.SortOrder;

import com.divemotor.ventarepuestosinternet.exception.DivemotorBusinessException;
import com.divemotor.ventarepuestosinternet.model.Marca;
import com.divemotor.ventarepuestosinternet.model.ModeloFabrica;
import com.divemotor.ventarepuestosinternet.model.TipoComponente;

public interface ModeloFabricaService {

	public ModeloFabrica obtenerPorId(ModeloFabrica modeloFabrica)
			throws DivemotorBusinessException;

	public List<ModeloFabrica> listarPorTipoComponente(
			TipoComponente tipoComponente) throws DivemotorBusinessException;

	public List<ModeloFabrica> listarActivosPorTipoComponente(
			TipoComponente tipoComponente) throws DivemotorBusinessException;

	public List<ModeloFabrica> listarActivosPorMarcaYTipoComponente(
			Marca marca, TipoComponente tipoComponente)
			throws DivemotorBusinessException;

	public List<ModeloFabrica> buscarModeloFabricaPorDescripcionMarcaYTipoComponente(
			int first, int pageSize, SortOrder sortOrder, String sortedField,
			ModeloFabrica modeloFabrica) throws DivemotorBusinessException;

	public Integer cantidadBuscarModeloFabricaPorDescripcionMarcaYTipoComponente(
			ModeloFabrica modeloFabrica) throws DivemotorBusinessException;
}
